package com.bizfx.component.views
{
	import com.bizfx.component.fields.IField;
	
	import mx.collections.IList;
	
	public interface IDetailView extends IView, IInitableView
	{		
		/**
		 * 视图数据读写状态。
		 */	
		function get readOnly():Boolean;
		function set readOnly(value:Boolean):void;
		/**
		 * 获取视图的所有字段
		 */
		function getFields():IList;
		
		/**
		 * 通过键值获取字段
		 */
		function getFieldByKey(fieldKey:String):IField;
		
		/**
		 * 添加字段
		 */
		function registerField(field:IField):void;
		
		/**
		 * 删除字段
		 */
		function unregisterFieldByKey(fieldKey:String):void;
		
		/**
		 * 验证视图
		 */
		function validate():void;
		
		function hideAllViewCommands():void;
		
		function showViewCommand(commandKey:String):void;
	}
}